package com.fate.system.entity;

import com.baomidou.mybatisplus.annotation.*;
import java.io.Serial;
import java.io.Serializable;
import java.time.LocalDateTime;
import lombok.Data;

/** 菜单表 @TableName sys_menu */
@TableName(value = "sys_menu")
@Data
public class Menu implements Serializable {
  @Serial
  @TableField(exist = false)
  private static final long serialVersionUID = 1L;

  /** id */
  @TableId private String id;

  /** 父id */
  private String pid;

  /** 菜单名称 */
  private String title;

  /** 路由地址 */
  private String path;

  /** 菜单类型 字典 menu_type： 1目录 2菜单 3按钮 */
  private String menuType;

  /** 排序 */
  private Integer orderNumber;

  /** 权限标识 */
  private String authority;

  /** 菜单图标 */
  private String icon;

  /** 是否隐藏 */
  private Boolean hide;

  /** 其他路由元信息 */
  private String meta;

  /** 打开方式 字典 open_type： 1组件 2内链 3链接 */
  private String openType;

  /** 逻辑删除 */
  @TableLogic private Integer deleted;

  /** 租户id */
  private String tenantId;

  /** 创建时间 */
  @TableField(fill = FieldFill.INSERT)
  private LocalDateTime gmtCreate;

  /** 修改时间 */
  @TableField(fill = FieldFill.INSERT_UPDATE)
  private LocalDateTime gmtModified;
}
